import { _decorator} from 'cc';
const { ccclass, property } = _decorator;

@ccclass('ColorMem')
export class ColorMem {
    //棋盘上的位置，有6中可能，0迷雾地区，1显示地区，2迷雾笼罩黑棋，4显示的黑棋，8迷雾笼罩白棋，16显示的白棋
    //空位置 00001
    static C_EMPTY = 1;
    //黑棋 00110
    static C_BLACK = 6;
    //白棋 11000
    static C_WHITE = 24;
    //显示 10101
    static C_SHOW = 21;
    //隐藏 01010
    static C_HIDE = 10;
    //显示区域 10100
    static C_SHOW_PIECE = 20;


    //传入黑棋返回白棋，传入白棋返回黑棋
    static getOtherColor(color: number): number {
        if (color == ColorMem.C_BLACK) {
            return ColorMem.C_WHITE;
        }
        if (color == ColorMem.C_WHITE) {
            return ColorMem.C_BLACK;
        }
        return 0;
    } 

    //棋盘上的黑白棋是2，4，8，16，
    static getColorMemByShowOrHide(color: number): number {
        if ((color & ColorMem.C_BLACK) > 0) {
            return ColorMem.C_BLACK;
        }
        if ((color & ColorMem.C_WHITE) > 0) {
            return ColorMem.C_WHITE;
        }
        return 0;
    } 
}